/**
 * Created by Administrator on 2016/9/6.
 */
/*  array(
 0=>array(
 array(
 'value'=>1,
 'option'=>'这是学院1',
 ), array(
 'value'=>2,
 'option'=>'这是学院2',
 )
 ),
 1=>array(
 array(
 'value'=>3,
 'option'=>'这是学院1专业1',
 ), array(
 'value'=>4,
 'option'=>'这是学院1专业2',
 )
 ),
 );*/


(function ($) {
    //默认参数
    var defaluts = {
        level:2,//联动等级
        data:[],//联动数组数组格式
        isdefaluts:false,//是否有默认值
        defalutsvalue:[],//对应默认值
        defalutsoptiontext:['未选择','未选择'],//初始值
        selectid:[],//对应操作
        layui_selectid:[],//对应操作
        value:false,
        layui_form:false,
        defalutsKey:0,
    };
    var opts;
    $.fn.extend({
        "liandonginit": function (options) {
           opts = $.extend({}, defaluts, options); //使用jQuery.extend 覆盖插件默认参数
            //console.log(opts.defalutsvalue);
           for (var currlevel=1;currlevel<=opts.level;currlevel++){
               var key=currlevel-1;
               if(key==0){
                   if(opts.value){
                       $(this).setlingdong(key,opts.value);
                   }else{
                       $(this).setlingdong(key,opts.defalutsKey);
                   }

               }else{
                   var selectid=opts.selectid[key-1];
                   $(selectid).attr('data_key',key);
                   if(opts.layui_form){
                       var selectid=opts.layui_selectid[key-1];
                       opts.layui_form.on('select('+selectid+')', function(data){
                           //console.log(data);
                           $(data.elem).setlingdong($(data.elem).attr('data_key'),data.value);
                       });
                   }else{
                       $(selectid).unbind('change').change(function () {
                           $(this).setlingdong($(this).attr('data_key'),$(this).val());
                       });
                   }
               }
           }
            if(opts.isdefaluts){
                for (var currlevel=1;currlevel<=opts.level;currlevel++){
                    var key=currlevel-1;
                    if(opts.defalutsvalue[key]){
                        $(opts.selectid[key]).trigger('change');
                    }
                }
            }


        },
        "setlingdong":function (key,datakey) {
            var data=opts.data[datakey];
            var selectid=opts.selectid[key];
            var defalutsvalue=opts.defalutsvalue[key];
            var defalutsoptiontext=opts.defalutsoptiontext[key];
            $(selectid).html(setoption(defalutsoptiontext));
            for (var i in data){
                $(selectid).append(setoption(data[i].option,data[i].value,defalutsvalue));
            }
            //把下级的都变成默认
            for(var i=key+1;i<opts.selectid.length;i++){
                var selectid=opts.selectid[i];
                var defalutsoptiontext=opts.defalutsoptiontext[i];
                $(selectid).html(setoption(defalutsoptiontext));
            }
            if(opts.layui_form){
                opts.layui_form.render();

            }
        }
    });
    function setoption(option,value,defaluts) {
        if(typeof (option)=='undefined'){
            option='未选择';
        }
        if(typeof (value)=='undefined'){
            value=option;
        }
        var optionc='<option value="'+value+'" ';
        if(defaluts==value){
            optionc+='selected';
        }
        optionc+='>'+option+'</option>';
        return optionc;
    }
})(jQuery);
